Extensions to Modelica for efficient code generation and separate compilation
نویسنده
چکیده
In the current Modelica specification, the only admitted external entities are memory-less functions. We propose an extension to allow parts of the model containing internal states, conditioning and discrete dynamics, to be definable as external functions. This opens the door to separate compilation of Modelica code. For this purpose, we introduce the language construct switchwhen and the type Event. These extensions are directly inspired by the Scicos formalism.
منابع مشابه
Parallel Code Generation in MathModelica / An Object Oriented Component Based Simulation Environment
Modelica is an a-causal, equation based, object oriented modeling language for modeling and efficient simulation of large and complex multi domain systems. The Modelica language, with its strong software component model, makes it possible to use visual component programming, where large complex physical systems can be modeled and composed in a graphical way. One tool with support for both graph...
متن کاملCompilation of Modelica Array Computations into Single Assignment C for Efficient Execution on CUDA-enabled GPUs
Mathematical models, derived for example from discretisation of partial differential equations, often contain operations over large arrays. In this work we investigate the possibility of compiling array operations from models in the equation-based language Modelica into Single Assignment C (SAC). The SAC2C SAC compiler can generate highly efficient code that, for instance, can be executed on CU...
متن کاملDynamic Optimization of Modelica Models – Language Extensions and Tools
The Modelica language is currently gaining increased interest, both in industry and in academia. Modelica is an object-oriented, general purpose modeling language, targeted at modeling of complex physical systems. While the main usage of models developed in Modelica is simulation, several other usages emerge. Examples of such usages are dynamic optimization, model reduction, calibration, verifi...
متن کاملNotes on the Separate Compilation of Modelica
Separate compilation is a must-have in software engineering. The fact that Modelica models are compiled from the global sources at once results from the language design as well as from the way compiled physical models are finally simulated. We show that the language in fact can be compiled separately when certain runtime conditions are met. We demonstrate this by transforming some specific Mode...
متن کاملThe Modelica Flight Dynamics Library
The Modelica Flight Dynamics Library has been developed to model 6-degrees-of-freedom, nonlinear flight dynamics and flight systems. Using this library the multidisciplinary interaction between flight dynamics and systems can easily be understood and analyzed. In this contribution the main benefits of the Flight Dynamics Library, concerning model building and efficient code generation – in part...
متن کامل